Systems and methods for operating a streaming service to provide community spaces for media content items

ABSTRACT

A community space is established for a media content item. Data items are received from contributing account holders. Each data item has metadata including an index time corresponding to a time of relevance of the data item during playback of the media content item. Each data item is separate from the media content item. The data items and their associated metadata are stored within the community space in correlation with the media content item. A streaming request for the media content item is received from a requesting account holder. The media content item is streamed to a device of the requesting account holder in response to the streaming request. At least some of the data items and their associated metadata correlated with the media content item are transmitted from the community space to the requesting account holder in conjunction with streaming the media content item to the requesting account holder.

BACKGROUND

Video streaming has become a mainstream option for consumers to receivemedia content. Some modern streaming systems, such as the PlayStation™Vue service provide streaming of live television, movies, and sportsevents to electronic devices of service subscribers. Such streamingsystems can provide real-time content as well as premium third partycontent, as well as archived content. Also, such streaming systems canprovide for saving of enormous amounts of video content within the cloudwithout recording conflicts. It is within this context that the presentinvention arises.

SUMMARY

In an example embodiment, a method includes establishing a communityspace for a media content item. The method also includes receiving oneor more data items from one or more contributing account holders. Eachof the one or more data items has metadata including an index timecorresponding to a time of relevance of the data item during playback ofthe media content item. Each of the one or more data items is separatefrom the media content item. The method also includes storing the one ormore data items and associated metadata within the community space incorrelation with the media content item. The method also includesreceiving a streaming request for the media content item from arequesting account holder. The method also includes streaming the mediacontent item to a device of the requesting account holder in response tothe streaming request. The method also includes transmitting at leastsome of the one or more data items and associated metadata correlatedwith the media content item from the community space to the device ofthe requesting account holder in conjunction with streaming the mediacontent item to the device of the requesting account holder.

Other aspects of the invention will become more apparent from thefollowing detailed description, taken in conjunction with theaccompanying drawings, illustrating by way of example the presentinvention.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 shows a video streaming system for providing streaming mediacontent over a network to electronic devices of a number of accountholders, in accordance with some embodiments of the present invention

FIG. 2 shows a diagram illustrating an example of a community space fora given streamed media content item, in accordance with some embodimentsof the present invention.

FIG. 3 shows how data items transmitted from the community space can beoverlaid directly on the given media content item during playback of themedia content items, in accordance with some embodiments of the presentinvention.

FIG. 4 shows the example of FIG. 3 with a data item tagged to the flyinghelmet, in accordance with some embodiments of the present invention.

FIG. 5 shows display of a container in conjunction with the mediacontent item, with the data items from the community space displayedwithin the container, in accordance with some embodiments of the presentinvention.

FIG. 6 shows the display of FIG. 5 with the container toggled to theclosed state and with the control provided for toggling the container tothe open state, in accordance with some embodiments of the presentinvention.

FIG. 7 shows the container upon selection of the sort control, inaccordance with some embodiments of the present invention.

FIG. 8 shows the container upon selection of the filter control, inaccordance with some embodiments of the present invention.

FIG. 9 shows the container of FIG. 5 with inclusion of a navigationcontrol for navigating temporally through the data items within thecontainer, in accordance with some embodiments of the present invention.

FIG. 10 shows display of multiple containers in conjunction withplayback of the media content item, in accordance with some embodimentsof the present invention.

FIG. 11 shows a flowchart of a method for operating a streaming service,in accordance with some embodiments of the present invention.

DETAILED DESCRIPTION

In the following description, numerous specific details are set forth inorder to provide a thorough understanding of the present invention. Itwill be apparent, however, to one skilled in the art that the presentinvention may be practiced without some or all of these specificdetails. In other instances, well known process operations have not beendescribed in detail in order not to unnecessarily obscure the presentinvention.

The following detailed description includes references to theaccompanying drawings, which form a part of the detailed description.The drawings show illustrations in accordance with example embodiments.These example embodiments, which are also referred to herein as“examples,” are described in enough detail to enable those skilled inthe art to practice the presented subject matter. The embodiments can becombined, other embodiments can be utilized, or structural, logical, andelectrical changes can be made without departing from the scope of whatis claimed. The following detailed description is therefore not to betaken in a limiting sense, and the scope is defined by the appendedclaims and their equivalents. In this document, the terms “a” and “an”are used, as is common in patent documents, to include one or more thanone. In this document, the term “or” is used to refer to a nonexclusive“or,” such that “A or B” includes “A but not B,” “B but not A,” and “Aand B,” unless otherwise indicated.

FIG. 1 shows a video streaming system 101 for providing streaming mediacontent over a network 103 to electronic devices 105 of a number ofaccount holders 107, in accordance with some embodiments of the presentinvention. In some embodiments, the video streaming system 101 isimplemented within a cloud computing architecture. The video streamingsystem 101 includes a streaming service 109 configured to receiverequests for media content from the devices 105 of the account holders107, by way of network 103, and further configured to stream requestedmedia content to the electronic devices 105 of the account holders 107,by way of network 103, upon verification of the account holder 107 asbeing authorized to access and receive the media content. Then, theelectronic device 105 can be operated to play the streaming mediacontent on a display 106 of the account holder 107. In some embodiments,the electronic device 105 and the display 106 are integrated togetherinto a single device, such as within a television system. It should beunderstood that the network 103 represents any combination of any typesof wired and/or wireless digital data communication networks, includingbut not limited to Wi-Fi network(s), Bluetooth network(s), cellularnetwork(s), cable network(s), satellite network(s), opticalcommunication network(s), among other types of networks. The mediacontent can be any type of audio/video content, including streamingvideo. In some embodiments, the streaming video accessible through thestreaming service 109 is one or more of a movie, a television show, asportscast, an independent video, and a computer-generated video, e.g.,game video, among others.

The streaming service 109 is configured to establish and maintainsecured accounts for the various account holders 107 for purposes ofmaintaining credentials for access authorization by the account holders107, tracking of account holder 107 preferences, and billing forservices provided to the account holders 107, among other functions. Thestreaming service 109 is configured to expose an application programminginterface (API) that can be used by software executing on the electronicdevices 105 of the account holders 107 to access and execute variousfunctions of the streaming service 109 exposed for public use, such aslogging into an account of the account holder 107, requestingperformance of an action by the streaming service 109 (e.g., streaming arequested media content item, etc.), requesting information about theaccount of the account holder 107, and uploading information and/orcontent to the streaming service 109, among other functions.

The streaming service 109 is connected in data communication with amedia content item source 111 configured to provide requested mediacontent items to the streaming service 109. In some embodiments, themedia content item source 111 includes a database of media content itemsthat can be queried to obtain a particular media content item forstreaming to the electronic devices 105 of the account holder 107. Insome embodiments, the media content item source 111 includes a number ofdata storage devices and/or data memory devices for storing mediacontent items for rapid acquisition by the streaming service 109. Themedia content item source 111 is configured to receive media contentitems from a number of media content providers 113, including but notlimited to internet source(s), user generated content, third partyprovider(s), motion picture studio(s), television network(s), and cablenetwork(s), among others. In some embodiments, the media content itemsource 111 is configured to expose an API that can be used by softwareexecuting on electronic devices of the media content providers 113 toenable uploading of media content items to the media content item source111, to enable access to media content items held by a media contentprovider 113, and to enable bi-directional communication of dataassociated with media content items between the media content providers113 and the media content item source 111.

In some embodiments, the streaming service 109 is configured to providean account log-in dialog for display on the electronic device 105 of theaccount holder 107 through which the account holder 107 can enter theircredentials to log into the streaming service 109 and gain access to themedia content items available for streaming. In some embodiments, atoken can be stored on the electronic device 105 of the account holder107 to enable automatic validation of the account holder 107 by thestreaming service 109 upon an attempt by the account holder 107 toaccess the streaming service 109 using the electronic device 105. Insome embodiments, the streaming service 109 can require the electronicdevice 105 to provide its current terrestrial location to the streamingservice 109, such as by transmitting latitude and longitude coordinates,as part of validation of the account holder 107 by the streaming service109 to help ensure that the electronic device 105 is being used by theactual account holder 107 that has paid for the streaming service 109.

In some embodiments, once the account holder 107 is successfully loggedinto the streaming service 109, the streaming service 109 is configuredto provide a navigable/selectable menu of available services for displayon the electronic device 105 of the account holder 107. In someembodiments, the menu of available services includes access to a listingof media content items available for streaming. In various embodiments,the media content items can be categorized and/or sorted to facilitatelocation of a particular media content item by the account holder 107.Upon selection of a particular media content item for streaming, thestreaming service 109 operates to retrieve the particular media contentitem from the media content item source 111 and stream the particularmedia content item to the electronic device 105 of the account holder107 for viewing on the display 106 of the account holder 107.

Also, in some embodiments, the menu of available services provided bythe streaming service 109 can include an account holder preferencessection within which the account holder can specify their preferenceswith regard to how the streaming service 109 provides service theaccount holder 107. In some embodiments, the account holder preferencessection includes a selectable preference for enabling/disabling a“community space” for a streamed media content item when available.Also, in some embodiments, the account holder can enable/disable acommunity space for a streamed media content item using a controller orother input device while actively viewing the streamed media contentitem. In general, the community space for a given streamed media contentitem is a data store of information and/or supplemental content providedfrom sources separate from the given streamed media content item, wherethe information and/or supplemental content is time-indexed to playbackof the streamed media content item.

FIG. 2 shows a diagram illustrating an example of a community space 201for a given streamed media content item, in accordance with someembodiments of the present invention. In some embodiments, the communityspace 201 is generated upon the initial airing/showing of the mediacontent item. In some embodiments, the community space 201 is generatedin advance of the initial airing/showing of the media content item, withthe community space 201 exposed in a discoverable manner so thatverified users of the streaming service 109 can discover and utilize thecommunity space 201 in anticipation of the corresponding media contentitem becoming available for viewing. In some embodiments, the communityspace 201 includes information and/or supplemental content provided bycontributing account holders 107 to the streaming service 109 as theyplay back the media content item. The example of FIG. 2 shows four dataitems 203, 205, 207, 209 contributed to the community space 201 byaccount holders 107 during their respective playback of the mediacontent item to which the community space 201 is associated. It shouldbe understood that the community space 201 can include an unlimitednumber of data items from an unlimited number of data item contributors.

In the example of FIG. 2, each data item 203, 205, 207, 209 is assigneda data item identifier (ID) when it is added to the community space 201.Also, in the example of FIG. 2, the metadata for each data item includesan index time indicating a time during playback of the media contentitem to which the data item is related. In this manner, each data item203, 205, 207, 209 is temporally indexed to a respective time duringplayback of the media content item. For example, data item 203 has anindex time of 00:21:42, which means that the data item 203 correspondsto the time 00:21:42 during playback of the media content item. Also, inthe example of FIG. 2, the metadata for each data item includes a dateand time when the data item was added to the community space 201. Forexample, the data item 203 was added to the community space on Oct. 12,2014, at 15:32:41 hours. Also, the date and time can be based on aspecified time zone.

In the example of FIG. 2, the metadata for each data item includes anidentity of the contributing account holder (CAH), who is the accountholder registered with the streaming service 109 that contributed, i.e.,added and/or uploaded, the data item to the community space 201. In someembodiments, the identity of the CAH is generated and maintained by thestreaming service 109 when the CAH registers with the streaming service109. In some embodiments, the identity of the CAH is an identificationnumber assigned to the CAH when they registered with the streamingservice 109. The streaming service 109 can receive and maintaininformation about each account holder, such as public user name, legaluser name, billing information, and preferences for various optionsprovided by the streaming service 109, among essentially any otherinformation about the account holder related to their use of thestreaming service 109. Using the identity of the CAH, the streamingservice 109 can correlate each data item 203, 205, 207, 209 within thecommunity space 201 to an actual registered account holder. This can beleveraged by the streaming service 109 to review content within thecommunity space 201 for compliance with established rules of conduct andremove/block content that violates established rules of conduct and totrack how account holders utilize the streaming service 109 to providean improved experience for individual account holders.

In the example of FIG. 2, the metadata for each data item also includesa specification of the type of data item. In various embodiments, thecommunity space 201 can be configured to accept and include one or moretypes of data items, including but not limited to text (such as for atext message), an image, a graphic, a photograph, an audio recording, avideo clip, a music file, a universal resource locator (URL), etc. Insome embodiments, the metadata for each data item may include the actualcontent of the data item, or include a reference to a location of theactual content of the data item, such as a reference to a location in acontent download network (CDN) or other cloud storage service. Forexample, in FIG. 2, the data item 203 is of type “text,” and the contentof the data item 203 includes the actual text “CLEAN HIT!!!” for thedata item 203 as provided by the CAH. The content of the data item isbased on the type of data item. For example, in FIG. 2, data item 207 isof the type “image” and the content of the data item 207 is a filename“mytshirt.jpg” for the image that defines the data item 207. And,similarly, the data item 209 in the example of FIG. 2 is of the type“audio” and the content of the data item 209 is a filename“coolsong1.mp3” for the audio that defines the data item 209. Again, itshould be understood that the community space 201 can be configured toreceive and include any type of data item and corresponding content thatcan be displayed and/or played during streaming of the media contentitem to which the data item is associated.

In the example of FIG. 2, the metadata for each data item also includesan up-vote count tally and a down-vote count tally. In some embodiments,when each data item is displayed in conjunction with streaming of themedia content item by an account holder 107, the account holder 107 isable to provide input as to whether they like or dislike the data item.Each like of the data item contributes to the up-vote count tally, andeach dislike of the data item contributes to the down-vote tally. Thecommunity space 201 display preferences for a given account holder canbe set to toggle on/off a display of the up-vote count tally anddown-vote count tally for the data items. In some embodiments, thestreaming service 109 can use the up-vote count tally and down-votecount tally for a given data item in a function for generating afan-rating for the CAH for the given data item. In some embodiments, themetadata for each data item can include the fan-rating for the CAH forthe data item. And, in some embodiments, the fan-ratings for the CAH'scan be stored with information on the CAH's outside of the metadata forthe data items, but can be correlated to the data items by way of theCAH identifier present within the metadata of the data items. Asdiscussed further below, the fan-rating for a given CAH can also begenerated based on information other than the up-vote count tally and adown-vote count tally for data items contributed by the given CAH.

In the example of FIG. 2, the metadata for each data item also includesa geographic location for the CAH for the data item. In variousembodiments, the geographic location can be specified by one or more ofphysical address, city, state, country, latitude/longitude coordinates,global positioning system (GPS) coordinates, internet protocol (IP)address, among other information that relates a geographic location forthe CAH for the data item. And, in some embodiments, the metadata foreach data item can include one or more group association(s) for the CAHfor the data item. The group association can be specified as a groupname or as a group number or as essentially any other type ofinformation that identifies a particular group. The group association(s)for the CAH for the data item, as well as the other metadata for thedata item, can be used to filter the population of data items within thecommunity space 201 for a given account holder 107 who is streaming themedia content item and who is simultaneously receiving content fromwithin the community space 201. In some embodiments, the geographiclocation and group association(s) for the CAH's can be stored withinformation on the CAH's outside of the metadata for the data items, butcan be correlated to the data items by way of the CAH identifier presentwithin the metadata of the data items.

By way of example, consider a group association that is created for agroup of friends (account holders 107) who wish to simultaneously streama particular media content item at their respective locations. Thisgroup association can be used to filter the population of data itemswithin the community space 201 associated with the particular mediacontent item, such that only the data items contributed by the accountholders 107 in the group of friends will be transferred to the accountholders 107 in the group of friends for display in conjunction with thestreaming and playback of the particular media content item. Therefore,in this example embodiment, filtering of community space 201 content bythe group association created for the group of friends can be used tocreate a private communication space for the group of friends while theysimultaneously stream and playback the particular media content item.Further with regard to filtering of the community space 201 content, itshould be understood that any metadata parameter (index time, date/timeadded, CAH, type, content, up-vote count, down-vote count, fan-rating,CAH geographic location, CAH group association, etc.) or combinationthereof can be used to filter the population of data items in thecommunity space 201 to create a customized subset of community space 201content for one or more account holders 107 as they stream and playbackthe media content item to which the community space 201 is associated.

With reference back to FIG. 1, it should be understood that when a CAHadds a data item to the community space 201, the CAH transmits digitaldata that defines the data item to the streaming service 109, and thestreaming service 109 operates to store the digital data for the dataitem within a community data storage 115. In some embodiments, thecommunity data storage 115 includes a number of data storage devicesand/or data memory devices for storing data items in association withone or more community spaces for rapid acquisition by the streamingservice 109. Also, it should be understood that the streaming service109 can have access to other storage system for storing, maintaining,and accessing information related to the account holders 107 of thestreaming service 109. In some embodiments, data items stored in thecommunity data storage 115 can be correlated to their CAH by way of theCAH identifier, and information about the CAH for a given data itemwithin the community data storage 115 can be accessed by the streamingservice 109 from a storage system separate from the community datastorage 115, so as to avoid storage of redundant data in both thecommunity data storage 115 and in another storage system accessible bythe streaming service 109.

It should be understood that the community space 201 for a given mediacontent item can serve to virtualize a type of real-world “watercooler”conversation among account holders as they stream and play back thegiven media content item at their respective locations. Also, it shouldbe understood that the community space 201 for a given media contentitem functions as both an archive and a dynamic communication space forsupplemental content associated with the given media content item, wherethe supplemental content is in the form of data items within thecommunity space 201. In other words, an archived population of dataitems contributed to the community space 201 for a given media contentitem is continuously updated as account holders 107 contribute new dataitems in conjunction with their streaming and playback of the givenmedia content item, regardless of when the given media content item isstreamed by the various account holders 107. And, at the actual timewhen the given media content item is being streamed and played back byan account holder 107, data items that are added to the community space201 in real-time are made immediately available for transfer to theaccount holder 107 in accordance with their currently set preferencesfor receiving content from the community space 201. Therefore,regardless of when the given media content item is being streamed andplayed back by an account holder 107, the content (i.e., population ofdata items) of the community space 201 associated with the given mediacontent item includes data items previously added to the community space201 during previous streaming of the given media content item to variousaccount holders 107 and data items currently added in real-time to thecommunity space 201. In some embodiments, data items added to thecommunity space 201 can remain indefinitely within the community space201. Additionally, in some embodiments, data items added to thecommunity space 201 can optionally have a limited term of existencewithin the community space 201, with an expiration of the limited termof existence triggered by a viewing of the data item by one or morespecified users and/or defined by a specified time period or date/time.

Again, it should be appreciated that filtering of content in thecommunity space 201 can be used to customize the experience for anaccount holder 107 with regard to time-dependency of data items that aretransferred to the account holder 107 in conjunction with their currentstreaming and playback of the given media content item. For example, ifan account holder wishes to only receive data items that are added tothe community space 201 during the current streaming of the given mediacontent item, the account holder can specify a filter setting to onlyhave data items transferred from the community space 201 that have adate/time added value in their metadata that is later than the startdate/time of the current streaming of the media content item. It shouldbe appreciated that this type filtering can create a customizedexperience for a group of account holders 107 to simulate an initialairing of a previously aired media content item, which may be useful inpreventing premature disclosure of information related to the mediacontent item from the community space 201.

For example, consider a group of friends that wish to stream andplayback a previously aired sporting event at the same time as if theywere watching the sporting event live, and limit the content from thecommunity space 201 to only content added by members of the group offriends during the current streaming of the sporting event. In thisexample, an association for the group of friends can be created with thestreaming service 109, and each data item added to the community space201 by a member of the group of friends can have the association for thegroup of friends specified in the metadata for the added data item.Then, each account holder 107 in the group of friends can specify thatthey wish to filter the content of the community space 201 by 1) theassociation for the group of friends as specified in the metadata of thedata items, and 2) any date/time added value as specified in themetadata of the data items that is later than a start date/time of thecurrent streaming of the sporting event by the group of friends. Itshould be appreciated that in this example the information transmittedfrom the community space 201 associated with the given media contentitem to each member of the group of friends will be limited to thosedata items added to the community space 201 by the members of the groupof friends during the current streaming of the given media content item,so as to simulate a community space 201 experience for an initial andprivate group airing of the given media content item. However, it shouldalso be appreciated that the population of data items within thecommunity space 201 associated with the given media content item willremain universal and archival (in accordance with any limited term ofexistence respectively specified for various data items) even during thecurrent streaming of the given media content item to the group offriends. Therefore, even during the current streaming of the given mediacontent item by the group of friends, the overall content of thecommunity space 201 for the given media content item can continue to beexpanded by CAH's outside of the group of friends.

The community space 201 associated with a given media content item, asprovided by the streaming service 109, provides gated access to aninteractive environment in which authorized account holders 107 of thestreaming service 109 can interact with each other and/or with thirdparties to enhance the entertainment/informational experience of theaccount holders as they use the streaming service 109 to stream andplayback the given media content item. Also, the community space 201 canprovide a messaging environment through which account holders 107 and/orthird party entities can communicate. And, the community space 201 canprovide a mechanism through which supplemental information can beprovided/contributed by account holders 107 and/or third party entities,where the supplemental information can have essentially any type ofaudio/visual form. And, it should be understood that the streamingservice 109 can be configured to police the content of the communityspace 201 to prevent inclusion of data items deemed offensive and/or notrelated to the given media content item to which the community space 201is associated. In some embodiments, the streaming service 109 can beconfigured to set a restriction rating for each data item within themetadata of the data item, based on analysis of the data item by thestreaming service 109. For example, in some embodiments, the restrictionrating for a given data item may be set as general audience (G),parental guidance (PG), restricted (R), or explicit (X), among others.And, the account holder 107 can set their preference to filter contentfrom the community space 201 by one or more of the restriction ratingsas specified for the data items. Moreover, in some embodiments, thestreaming service 109 can be configured to perform the analysis of thedata items to determine their restriction ratings in an automated mannerupon receiving the data items from the CAH's. This analysis can berules-based and can include lexigraphical, grammatical, and/orphonemical analysis of the content of the data items.

As previously mentioned, the CAH for a data item within the communityspace 201 can have a fan-rating generated by the streaming service 109.In various embodiments, the fan-rating can be based on differentcharacteristics and/or behaviors of the CAH and/or can be based onresponses of other account holders 107 to data items added to thecommunity space 201 by the CAH. For example, in some embodiments, thefan-rating for a CAH can be based on a percent of related media contentitems that have been streamed by the CAH. For instance, if the communityspace 201 is associated with a television show that is one of a seriesof television shows, the fan-rating for a CAH adding data items to thecommunity space 201 associated with the television show can be based (atleast in part) on the percent of the series of television shows thathave been streamed (and presumably watched) by the CAH. In someembodiments, the fan-rating for a CAH can be based on a number of mediacontent items streamed by the CAH. In some embodiments, the fan-ratingfor a CAH can be based a number of data items contributed to a givencommunity space 201 by the CAH. In some embodiments, the fan-rating fora CAH can be based a number of data items contributed to any communityspace 201 by the CAH.

In some embodiments, the fan-rating for a CAH can be based on streaminghabits of the CAH. And, in some embodiments, the fan-rating for a CAHcan be based on participation of the CAH in activities provided throughthe community space 201. For example, in some embodiments, the streamingservice 109 can add data items to a given community space 201, wheresome of these data items can include interactive opportunities foraccount holders 107, such as quizzes, surveys, questions, mini-games,etc. Participation/interaction with these data items by an accountholder 107 can be tracked by the streaming service 109 and can be usedto adjust the fan-rating of the account holder 107. In some embodiments,the voting activity of an account holder 107 with regard up/down votingof data items can be tracked by the streaming service 109 and can beused to adjust the fan-rating of the account holder 107.

Also, in some embodiments, the fan-rating for a CAH can be based on“light-touch” interaction by the CAH during initial streaming of mediacontent items by the CAH. For example, the streaming service 109 can beconfigured to transmit special data items to an account holder 107,through the community space 201 associated with a given media contentitem, during an initial streaming by the account holder 107 of the givenmedia content item, where the special data items request the accountholder 107 to push a button or take some other action in associationwith the playback of the media content item, such as when the accountholder 107 sees a particular object or hears a particularsound/word/phrase during the playback of the media content item. Theaccount holder's 107 participation/response to these special data itemscan be tracked by the streaming service 109 and can be used to adjustthe fan-rating of the account holder 107. In some embodiments, thespecial data items can be generated and transmitted by the streamingservice 109 in partnership with a third party. For example, if anadvertiser has product placement in a given media content item, thestreaming service 109 can partner with the advertiser to generate andtransmit a special data item through the community space 201 associatedwith the given media content item to request the account holder 107 totake a particular detectable action upon seeing or hearing somethingrelated to the advertiser's product placement within the media contentitem. In some embodiments, the account holder's 107 participation withthis type of special data item can be used to earn real-world rewards.For example, if an account holder 107 successfully interacts with aspecial data item provided through the community space 201 to indicateobservation by the account holder 107 of an advertiser's product withina given media content item during playback of the given media contentitem, the account holder 107 can win/earn a discount for theadvertiser's product, where such discount can be conveyed to the accountholder 107 by barcode, QR-code, or any other unique identifyingmechanism in an email, text message, or other form of communication, orcan be conveyed to the account holder in a secure manner through awebsite associated with the streaming service 109, or can be conveyed tothe account holder 107 by non-digital means, such as by a physicalcoupon.

Generally speaking, it should be understood that the streaming service109 can be configured to add special data items to any community space201, wherein the special data items can be defined to promote accountholder 107 interaction with the community space 201 and/or cross-promoteother services and platforms in partnership with the streaming service109. For example, in some embodiments, the streaming service 109 canhave a company/enterprise relationship with another entity and cangenerate and add data items to a community space 201 associated with agiven media content item to cross-promote a product and/or serviceoffered by the other entity. For example, consider a case where thestreaming service 109 is the PlayStation™ Vue service, and the mediacontent item of interest is a movie based on a video game. In thisexample, the streaming service 109 (PlayStation™ Vue) can be configuredto generate and add special data items to the community space 201associated with the movie based on the video game, where the specialdata items offer or lead to a discount on the video game for thePlayStation™ gaming system, or offer or lead to in-game rewards providedthrough the PlayStation™ gaming system. It should be appreciated thatthis is one of many examples of how data items within the communityspace 201 can be used for cross-promotion of products and services.

For example, with the streaming service 109 being the PlayStation™ Vueservice, data items can be generated and added to the community space201 to cross-promote PlayStation™ Plus time, PlayStation™ Now time,discounts on PlayStation™ Store merchandise, etc. Additionally, in someembodiments, the streaming service 109 can generate and add special dataitems to the community space 201 that allow account holders to unlockspecial/hidden features for the associated media content item. Forexample, a special data item can be added by the streaming service 109to the community space 201 to overlay bonus audio/video during playbackof media content item. By way of example, consider that the mediacontent item is a football game, and the streaming service 109 generatesand adds a special data item to the community space 201 associated withthe football game, where the special data item provides a link (or otheruser-activatable mechanism) that upon activation by the account holder107 streams video for additional camera views to the account holder 107for display in conjunction with media content item. For instance, if amajor play occurs in the football game, the streaming service 109 (orpartner working with the streaming service 109) can generate and add aspecial data item to the community space 201 associated with thefootball game that provides a link that upon activation by the accountholder 107 causes streaming to the account holder 107 of extra video forcamera views of the two team's sidelines during the major play that canbe displayed for the account holder 107 in conjunction with the playbackof the football game.

With reference back to FIG. 1, in some embodiments, the video streamingsystem 101 includes a dynamic data item generation module 117 configuredto process the data items within the community space 201 associated witha given media content item to dynamically generate and add new dataitems to the community space 201 based on the content of the data itemsadded to the community space by the CAH's. The dynamic data itemgeneration module 117 includes a machine learning module 119 configuredto analyze and correlate the content of the data items added to thecommunity space by the CAH's to determine subject matter and content forgeneration of dynamic data items. In some embodiments, the machinelearning module 119 extracts lexigraphical, grammatical, and/orphonemical content from the data items within the community space 201 toidentify similarities and differences among various data items. In someembodiments, the machine learning module 119 is configured to identifycommon themes and/or threads of subject matter among subsets of dataitems, and upon doing so generate a new data item thatencapsulates/summarizes the identified common themes and/or threads ofsubject matter. For example, if a number of data items convey a commonsentiment, the machine learning module 119 can identify the commonsentiment and dynamically generate a new data item that summarizes thecommon sentiment. Then, depending on the preference settings of theaccount holder 107, the dynamically generated data item can betransmitted to the account holder 107 in lieu of the number of dataitems that convey the common sentiment. This can help declutter thecommunity space 201 content received by the account holder 107. Also,the dynamically generated data item can include an activatable link thatupon activation by the account holder 107 causes transmission anddisplay of the data items upon which the dynamically generated data itemis based.

Also, in some embodiments, the machine learning module 119 can beconfigured to correlate identified themes and/or threads of subjectmatter among subsets of data items with regard to multiple featuresand/or relationships in order to dynamically generate new data itemsthat represent content not yet included within the community space 201.For example, the machine learning module 119 can be configured todetermine that a first subset of data items have a first common theme,and a second subset of data items have a second common theme, and thatan identifiable relationship exists between the first subset of dataitems and the second subset of data items. Then, based on this, themachine learning module 119 can be configured to generate a new dataitem that represents a linkage of the first common theme with the secondcommon theme by way of the identified relationship.

For example, consider the case of a media content item that is afootball game, with the community space 201 including data itemscontributed by fans of each team playing in the football game. Themachine learning module 119 can operate to determine that a first subsetof data items have a first common theme in that they are contributed byfans of the first team. The machine learning module 119 can operate todetermine that a second subset of data items have a second common themein that they are contributed by fans of the second team. Then, themachine learning module 119 can operate to determine that anidentifiable relationship exists between the first subset of data itemsand the second subset of data items in that the fans of the first teamlike a particular beverage and the fans of the second team also like theparticular beverage. Then, the machine learning module 119 can operateto dynamically generate a new data item that provides information aboutthe particular beverage and add the new data item to the community space201. It should be understood that the above example is provided forpurposes of description and is not intended to be limiting with regardto the functionality of the dynamic data item generation module 117and/or with regard to the machine learning module 119. It should beunderstood that the dynamic data item generation module 117 and themachine learning module 119 can be configured to process and analyze thedata items within the community space 201 in many different ways togenerate dynamic data items of all types.

In various embodiments, data items that are transmitted from thecommunity space 201 associated with a given media content item inconjunction with streaming of the given media content item can beorganized and displayed in different ways upon receipt at the electronicdevice 105 of the account holder 107. FIG. 3 shows how data itemstransmitted from the community space 201 can be overlaid directly on thegiven media content item during playback of the media content items, inaccordance with some embodiments of the present invention. In theexample of FIG. 3, the data items 203 and 205 from FIG. 2 are overlaidon the media content item in accordance with their index time of00:21:42. Specifically, in the example of FIG. 3, the data items 203 and205 appear on the display 106 over portions of the media content itemwhen the playback of the media content item reaches time 00:21:42. Insome embodiments, the streaming service 109 can direct a length of timethe data items 203 and 205 are displayed. For example, the streamingservice 109 may direct that the data items 203 and 205 are displayed for5 seconds beginning at time 00:21:42. In some embodiments, the accountholder 107 that requests streaming of the media content item can specifya preference for the amount of time data items are to be displayedduring playback of the media content item. Also, in some embodiments,the account holder 107 can provide an input signal to cause particulardata items to either be removed from the display 106 or persist on thedisplay 106. Also, in some embodiments, the location at which data itemsappear on the display 106 can be controlled by the streaming service109. And, in some embodiments, the location at which data items appearon the display 106 can be specified to the streaming service 109 as apreference, e.g., bottom, top, left, right, etc. Additionally, in someembodiments, some data items can be assigned/tagged to specific pixellocations within the display 106. For example, FIG. 4 shows the exampleof FIG. 3 with a data item 401 tagged to the flying helmet, inaccordance with some embodiments of the present invention. Therefore, inthis example, the data item 401 is displayed at a pixel locationcorresponding to the flying helmet. In this example, the data item 401is of audio type with a link “listen to this” that upon activation playssome audio from a stored audio content file, such as close up sound ofthe collision with the helmet. Also, in some embodiments, the locationof a tag for a data item within an image can include a two-dimensionallocation within a video frame. And, in some embodiments, the location ofa tag for a data item within an image can include athree-plus-dimensional location, such that the location of the tag isspecified by a combination of x-location, y-location, depth-location,occlusion rules, among other parameters, which may be relevant in thecontext of virtual reality and/or augmented reality viewingapplications. Additionally, in some embodiments, through use of imagerecognition processes, a data item tagged to an object within a scene atsome initial point can be made to remain attached to that object as thescene progresses in time, even as the object is moved around within thescene.

Additionally, during playback of the media content item, the accountholder 107 can provide an input signal to the streaming service 109 totoggle on/off the display of data items from the community space 201.And, as previously discussed, the streaming service 109 can providefiltering options to the account holder 107 to allow the account holder107 to select how data items within the community space 201 should befiltered for transmission to the account holder 107. Again, in variousembodiments, the population of data items within the community space 201can be filtered by essentially any parameter(s) that characterize thedata items and/or the source of the data items. Also, in someembodiments, the account holder 107 can specify how the data items areto be displayed, such as what information about the data items is to bedisplayed. In the example of FIG. 3, the data items 203 and 205 aredisplayed to show the public name of the CAH, the fan-rating of the CAH,the content of the data items, the up-vote count, and the down-votecount. In the example of FIG. 4, the data item 401 is displayed to showjust the public name of the CAH and the content of the data item.

In some cases, the account holder 107 may not wish to have the dataitems displayed over the media content item, for example to avoidobscuring or distracting from the media content. FIG. 5 shows display ofa container 501 in conjunction with the media content item, with thedata items from the community space 201 displayed within the container501, in accordance with some embodiments of the present invention. Insome embodiments, the data items shown in the container 501 follow theplayback time of the media content item. In other words, the data itemsshown in the container 501 at a given time are the data items from thecommunity space 201 that have an index time at or near the currentplayback time of the media content item. The container 501 can include acontrol 503 to enable toggling between open and closed states of thecontainer 501. For example, FIG. 6 shows the display of FIG. 5 with thecontainer 501 toggled to the closed state and with the control 503provided for toggling the container 501 to the open state, in accordancewith some embodiments of the present invention. In some embodiments, theaccount holder 107 can move and/or resize the container 501 on thedisplay using a controller and/or other device that conveys pertinentinput signals. And, in some embodiments, contents of the container 501are automatically resized and repositioned as the account holder 107moves and/or resizes the container 501.

FIG. 5 also shows a sort control 505 configured to allow the accountholder to specify how the data items shown within the container 501should be sorted. FIG. 7 shows the container 501 upon selection of thesort control 505, in accordance with some embodiments of the presentinvention. Upon selection of the sort control 505, the container 501adjusts to show a list of parameters 509 by which the data items can besorted, and a corresponding sort level fields 511 in which the desiredsort levels can be entered by the account holder 107. The sort levelsspecify an order of parameters by which the data items are sorted. Inthe example of FIG. 7, the data items will be sorted first by date andtime when the data items were added to the community space 201 and thenby the fan-rating of the CAH that added the data items to the communityspace 201. The list of parameters 509 is provided by way of example. Inother embodiments, the list of parameters 509 can include otherparameters that characterize the data items and/or the CAH's thatcontributed the data items. In the example list of parameters 509 thecontributor parameter refers to the identity of the CAH that contributedthe data item to the community space 201, the location parameter refersto the geographic location of the CAH that contributed the data item tothe community space 201, the association parameter refers to any groupassociation(s) of the CAH that contributed the data item to thecommunity space 201, the type parameter refers to the type of data item(e.g., text, audio, image, graphic, music, video, picture, etc.), andthe source parameter refers to the source of the data item (e.g., anaccount holder, a third party, an advertiser, the streaming service 109,etc.). The container 501 also provides an acceptance control 513 thatupon activation will revert the container to showing the data items inaccordance with the sort specifications.

With reference back to FIG. 5, the container 501 can also include afilter control 507 configured to allow the account holder 107 to specifyhow the population of data items within the community space 201 shouldbe filtered for transmission to the account holder 107. FIG. 8 shows thecontainer 501 upon selection of the filter control 507, in accordancewith some embodiments of the present invention. It should be understoodthat the population of data items within the community space 201 can befiltered by essentially any parameter that characterizes the data itemsand/or the CAH that contributed the data items. The example of FIG. 8shows a date/time filter parameter 515 that allows the account holder107 to specify a range of dates and times at which data items were addedto the community space 201. When set, only the data items that wereadded to the community space 201 during the specified range of dates andtime will be transmitted for display within the container 501. The dateand time filter ranges can be single-ended by leaving one end of therange unspecified. The example of FIG. 8 also shows a contributor(s)filter parameter 517 that allows the account holder 107 to specify oneor more data item contributors, i.e., CAH(s). When set, only the dataitems that were added to the community space 201 by the specifiedcontributor(s) will be transmitted for display within the container 501.

The example of FIG. 8 also shows a fan-rating filter parameter 519 thatallows the account holder 107 to specify fan-rating range for data itemcontributors. When set, only the data items that were added to thecommunity space 201 by the contributor(s) having a fan-rating within thespecified range will be transmitted for display within the container501. The fan-rating range can be single-ended by leaving one end of therange unspecified. The example of FIG. 8 also shows a location filterparameter 521 that allows the account holder 107 to specify geographiclocation for data item contributors. When set, only the data items thatwere added to the community space 201 by the contributor(s) having thespecified geographic location will be transmitted for display within thecontainer 501. In various embodiments, the geographic location can bespecified as a physical address, a city, a county, a state, a country,among others. The example of FIG. 8 also shows an association(s) filterparameter 523 that allows the account holder 107 to specify one or moregroup association(s) for data item contributors. When set, only the dataitems that were added to the community space 201 by the contributor(s)having the specified group association(s) will be transmitted fordisplay within the container 501.

The example of FIG. 8 also shows a type(s) filter parameter 525 thatallows the account holder 107 to specify one or more data item types.When set, only the data items that are of at least one of the specifieddata item types will be transmitted for display within the container501. In various embodiments, the data item types include text, audio,image, graphic, music, video, picture, among others. The example of FIG.8 also shows a source(s) filter parameter 527 that allows the accountholder 107 to specify one or more data item sources. When set, only thedata items that originate from at least one of the specified data itemsources will be transmitted for display within the container 501. Invarious embodiments, the data item sources can include an accountholder, a third party, an advertiser, the streaming service 109, amongothers.

The example of FIG. 8 also shows an up-vote filter parameter 529 thatallows the account holder 107 to specify an up-vote range for dataitems. When set, only the data items that have an up-vote count withinthe specified range will be transmitted for display within the container501. The up-vote range can be single-ended by leaving one end of therange unspecified. Similarly, the example of FIG. 8 also shows andown-vote filter parameter 531 that allows the account holder 107 tospecify a down-vote range for data items. When set, only the data itemsthat have a down-vote count within the specified range will betransmitted for display within the container 501. The down-vote rangecan be single-ended by leaving one end of the range unspecified.

The example of FIG. 8 also shows a rating(s) filter parameter 533 thatallows the account holder 107 to specify one or more allowed ratings forthe data item types. When set, only the data items that are of at leastone of the specified data item ratings will be transmitted for displaywithin the container 501. In various embodiments, the data item ratingsinclude general audience (G), parental guidance (PG), restricted (R),explicit (X), among others. The container 501 also provides anacceptance control 534 that upon activation will revert the container501 to showing the data items in accordance with the filterspecifications. It should be understood that the sort specifications andthe filter specifications can be simultaneously applied to thepopulation of data items within the community space 201 for determiningwhich data items are to be transmitted to a given account holder 107,without regard to how the data items are displayed to the account holder107 (e.g., overlaid on media content item or within a container 501).

FIG. 9 shows the container 501 of FIG. 5 with inclusion of a navigationcontrol 535 for navigating temporally through the data items within thecontainer 501, in accordance with some embodiments of the presentinvention. In the example of FIG. 9, the navigation control 535 can bemoved like a slider to scroll through the data items within thecontainer 501. This features allows the user (account holder 107) tolook backward and forward through the data items relative to the currentplayback time of the media content item. Also, in some embodiments, thedata items shown in the container 501 are configured to provide temporalcontrol of the playback of the media content item upon their selectionby the user. For example, the user can navigate forward in time,relative to the current playback time of the media content item, throughthe data items in the container 501 using the navigation control 535,and can select a data item that is forward in time. Upon selection ofthe data item that is forward in time, the playback time of the mediacontent item will be moved to the index time of the selected data item.In this manner, the container and its data items contents can be used tocontrol playback of the media content item. Also, in some embodiments, atime control field 537 can be provided in the container 501 to specifythe current playback time of the media content item. And, in someembodiments, the user can directly adjust the time within the timecontrol field 537 to cause a corresponding change in the currentplayback time of the media content item and to simultaneously change thedata items shown in the container 501 to those having index times at ornear the time specified within the time control field 537.

In some embodiments, multiple containers 501 can be simultaneouslydisplayed in conjunction with the playback of the media content item.FIG. 10 shows display of multiple containers 501A and 501B inconjunction with playback of the media content item, in accordance withsome embodiments of the present invention. Each container 501A and 501Bcan have its own sort settings and its own filter settings. Therefore,it should be appreciated that the account holder 107 can set up multiplecontainers 501A, 501B to simultaneously display data items from thecommunity space 201 in a compartmentalized manner. For instance, usingthe football game example, the user can set up the container 501A toshow data items associated with fans of the first team and can set upthe container 501B to show data items associated with fans of the secondteam. In other example, the user may set up one container to includeonly third party and/or advertiser sourced data items, and set upanother container to include data items contributed from a selectedgroup of friends. It should be appreciated that the compartmentalizationof the population of data items from the community space 201 intodifferent containers, e.g., 501A, 501B, by use of filter settings forthe different containers can enhance the user's ability to consume moredata items in a simultaneous manner and thereby enhance the user'sexperience.

Also, with reference back to FIG. 1, in some embodiments, the data itemstransmitted from the community space 201 in conjunction with streamingof the associated media content item can be transmitted for display on adevice 108 of the account holder 107 that is different from theelectronic device 105 and display 106 that the account holder 107 isusing to view the media content item. For example, the account holder107 can have an application executing on the device 108 that is incommunication with the streaming service 109, where the device 108 is apersonal electronic device (such as a smartphone or a tablet or laptop,or a personal computer, or any other type of personal electronic devicewith a display screen). In this example, the media content item istransmitted to the electronic device 105 for playback on the display 106of the account holder 107, and the data items from the community space201 associated with the media content item are transmitted in asimultaneous manner to the application executing on the device 108 ofthe account holder 107. The application executing on the device 108 ofthe account holder 107 can be configured to provide the container 501features disclosed above. Also, the streaming service 109 can beconfigured to synchronize the playback of the media content item on thedisplay 106 with the operation of the container 501 on the device 108.In some embodiments, the device 108 receives data directly from thestreaming service 109 and communicates data directly to the streamingservice 109, by way of an appropriate configuration of the network 103.In some embodiments, the device 108 receives data from the streamingservice 109 by way of the electronic device 105, and/or communicatesdata to the streaming service 109 by way of the electronic device 105.In some embodiments, the device 108 and the electronic device 105communicate with each other using a local network, such as a Wi-Finetwork, a Bluetooth network, or another type of local wireless and/orwired network.

FIG. 11 shows a flowchart of a method for operating a streaming service,e.g., streaming service 109, in accordance with some embodiments of thepresent invention. The method includes an operation 1101 forestablishing a community space for a media content item. The communityspace also has a corresponding designated data storage space within acommunity data storage system. In some embodiments, the community spacefor the media content item is generated upon an initial streaming of themedia content item. In some embodiments, the media content item is astreaming video. In some embodiments, the streaming video is one or moreof a movie, a television show, a sportscast, an independent video, and acomputer-generated video, among others. The method also includes anoperation 1103 for receiving one or more data items from one or morecontributing account holders. Each of the one or more data items hasmetadata including an index time corresponding to a time of relevance ofthe data item during playback of the media content item. Also, each ofthe one or more data items is separate from the media content item. Insome embodiments, the data item includes digital data for one or more ofa text message, an image, a graphic, a photograph, an audio recording, avideo clip, and a music file, among others. The method also includes anoperation 1105 for storing the one or more data items and associatedmetadata within the community space in correlation with the mediacontent item.

The method also includes an operation 1107 for receiving a streamingrequest for the media content item from a requesting account holder. Themethod also includes an operation 1109 for streaming the media contentitem to a device of the requesting account holder in response to thestreaming request. The method also includes an operation 1111 fortransmitting at least some of the one or more data items and associatedmetadata correlated with the media content item from the community spaceto the device of the requesting account holder in conjunction withstreaming the media content item to the device of the requesting accountholder. The method can also include an operation for directing displayof the one or more data items on the device of the requesting accountholder in accordance with the index time of the data item duringplayback of the media content item. In some embodiments, the one or moredata items are displayed on the device of the requesting account holdersimultaneously with the playback of the media content item.

The method can also include receiving an additional data item from oneor more contributing account holders during streaming of the mediacontent item to the device of the requesting account holder. Theadditional data item can have metadata including an index timecorresponding to a time of relevance of the additional data item duringplayback of the media content item. The method can also include anoperation for storing the additional data item and associated metadatawithin the community space in correlation with the media content item.The method can also include transmitting the additional data item andassociated metadata from the community space to the device of therequesting account holder in conjunction with continued streaming of themedia content item to the device of the requesting account holder.

In some embodiments, the metadata of each data item includes an identityof the contributing account holder from whom the data item is received.Also, in some embodiments, the method can include an operation fortracking a fan-rating for the contributing account holder from whom thedata item is received. The metadata of each data item can include thefan-rating for the contributing account holder from whom the data itemis received. The method can also include an operation for directingdisplay of the one or more data items on the device of the requestingaccount holder in accordance with the index time of the data item duringplayback of the media content item, where one or both of the identity ofthe contributing account holder from whom the data item is received andthe fan-rating for the contributing account holder from whom the dataitem is received is displayed in conjunction with the data item on thedevice of the requesting account holder. In some embodiments, trackingthe fan-rating for the contributing account holder from whom the dataitem is received includes one or more of tracking a number of streamingrequests received from the contributing account holder, tracking anumber of views of data items received from the contributing accountholder, tracking participation of the contributing account holder in oneor more activities associated with the community space, and tracking avote count associated with data items received from the contributingaccount holder.

In some embodiments, the method includes an operation for directingdisplay of a container including the one or more data items on thedevice of the requesting account holder. In some embodiments, thecontainer is configured to provide for display navigation through theone or more data items. In some embodiments, the container is displayedon the device of the requesting account holder simultaneously with theplayback of the media content item. In some embodiments, the containeris configured to provide a user-controllable sort of the one or moredata items by one or more of index time, contributing account holder,data item type, fan-rating, geographic location of contributing accountholder, and group association of contributing account holder, amongothers. In some embodiments, the container is configured to provide atext search function to enable search of a specified text string withinthe content of the one or more data items. Also, in some embodiments,the container is configured to enable user-selection of any of the oneor more data items. And, the method can further include an operation formoving a current playback time of the media content item to the indextime within the metadata of a currently selected data item within thecontainer.

In some embodiments, the metadata of some of the one or more data itemsincludes specification of a pixel position within a video frame of themedia content item, where the data item is correlated to the pixelposition. In some embodiments, the method can include an operation fordirecting display of the one or more data items on the device of therequesting account holder in accordance with the index time of the dataitem during playback of the media content item and at the pixel positionto which the data item is correlated.

In some embodiments, the method includes an operation for receiving aspecification of one or more data item filter parameters from therequesting account holder. The method can also include an operation forfiltering the one or more data items stored within the community spacein accordance with the specification of one or more data item filterparameters to identify a set of filtered data items. Then, just the setof filtered data items and associated metadata correlated with the mediacontent item is transmitted from the community space to the device ofthe requesting account holder in conjunction with streaming the mediacontent item to the device of the requesting account holder. In someembodiments, the one or more data item filter parameters include one ormore of index time, contributing account holder, data item type,fan-rating, geographic location of contributing account holder, groupassociation of contributing account holder, and data item rating, amongothers.

In some embodiments, the method includes an operation for processing theone or more data items received from the one or more contributingaccount holders through a machine learning module to generate one ormore dynamic data items based on the data items received from the one ormore contributing account holders. Each of the one or more dynamic dataitems has metadata including an index time corresponding to a time ofrelevance of the dynamic data item during playback of the media contentitem. And, each of the one or more dynamic data items has metadataincluding a history of the one or more data items received from the oneor more contributing account holders upon which the dynamic data item isbased. The method can also include storing the one or more dynamic dataitems and associated metadata within the community space in correlationwith the media content item. And, the method can include transmittingsome of the one or more dynamic data items and associated metadata fromthe community space to the device of the requesting account holder inconjunction with streaming of the media content item to the device ofthe requesting account holder.

In some embodiments, the machine learning module is configured tocorrelate multiple data items received from the one or more contributingaccount holders into a set of correlated data items based on inclusionof similar content within the set of correlated data items. The machinelearning module can also be configured to determine a subject and/or atheme of the set of correlated data items. The machine learning modulecan also be configured to generate a dynamic data item conveying thedetermined subject and/or theme of the set of correlated data items. Insome embodiments, some of the one or more dynamic data items represent aconsolidation of a plurality of data items received from the one or morecontributing account holders. In some embodiments, some of the one ormore dynamic data items represent a new composition based on a pluralityof data items received from the one or more contributing accountholders.

Although some method operations have been described in a specific orderherein, it should be understood that other housekeeping operations maybe performed between operations, or operations may be adjusted so thatthey occur at slightly different times, or may be distributed in asystem which allows the occurrence of the processing operations atvarious intervals associated with the processing. Embodiments of thepresent invention may be practiced with various computer systemconfigurations including hand-held devices, microprocessor systems,microprocessor-based or programmable consumer electronics,minicomputers, mainframe computers and the like. The invention can alsobe practiced in distributed computing environments where tasks areperformed by remote processing devices that are linked through awire-based or wireless network.

With the above embodiments in mind, it should be understood that theinvention can employ various computer-implemented operations involvingdata stored in computer systems. These operations are those requiringphysical manipulation of physical quantities. Any of the operationsdescribed herein that form part of the invention are useful machineoperations. The invention also relates to a device or an apparatus forperforming these operations. The apparatus can be specially constructedfor the required purpose, or the apparatus can be a general-purposecomputer selectively activated or configured by a computer programstored in the computer. In particular, various general-purpose machinescan be used with computer programs written in accordance with theteachings herein, or it may be more convenient to construct a morespecialized apparatus to perform the required operations.

Various components utilized with the invention can be embodied ascomputer readable code on a computer readable medium. The computerreadable medium is any data storage device that can store data, whichcan be thereafter be read by a computer system. Examples of the computerreadable medium include hard drives, network attached storage (NAS),read-only memory, random-access memory, CD-ROMs, CD-Rs, CD-RWs, magnetictapes and other optical and non-optical data storage devices. Thecomputer readable medium can include computer readable tangible mediumdistributed over a network-coupled computer system so that the computerreadable code is stored and executed in a distributed fashion.

Although the foregoing invention has been described in some detail forpurposes of clarity of understanding, it will be apparent that certainchanges and modifications can be practiced within the scope of theappended claims. Accordingly, the present embodiments are to beconsidered as illustrative and not restrictive, and the invention is notto be limited to the details given herein, but may be modified withinthe scope and equivalents of the described embodiments.

What is claimed is:
 1. A method, comprising: establishing a communityspace for a media content item, wherein the media content item is astreaming video; receiving one or more data items from one or morecontributing account holders, wherein each of the one or more data itemshas metadata including an index time corresponding to a time ofrelevance of the data item during playback of the media content item,wherein the metadata of each data item includes an identity of thecontributing account holder from whom the data item is received, whereineach of the one or more data items is separate from the media contentitem; tracking a fan-rating for each of the one or more contributingaccount holders, wherein the metadata of each data item includes afan-rating for a contributing account holder from whom the data item isreceived; storing the one or more data items and associated metadatawithin the community space in correlation with the media content item;receiving a streaming request for the media content item from arequesting account holder; streaming the media content item to a deviceof the requesting account holder in response to the streaming request;transmitting at least some of the one or more data items and associatedmetadata correlated with the media content item from the community spaceto the device of the requesting account holder in conjunction withstreaming the media content item to the device of the requesting accountholder; and directing display of the one or more data items on thedevice of the requesting account holder in accordance with the indextime of the data item during playback of the media content item, whereinboth the identity of the contributing account holder from whom the dataitem is received and the fan-rating for the contributing account holderfrom whom the data item is received is displayed in conjunction with thedata item on the device of the requesting account holder.
 2. The methodas recited in claim 1, wherein the community space for the media contentitem is generated upon an initial streaming of the media content item.3. The method as recited in claim 1, wherein the streaming video is oneor more of a movie, a television show, a sportscast, an independentvideo, and a computer-generated video.
 4. The method as recited in claim1, wherein the data item includes digital data for one or more of a textmessage, an image, a graphic, a photograph, an audio recording, a videoclip, and a music file.
 5. The method as recited in claim 1, furthercomprising: directing display of the one or more data items on thedevice of the requesting account holder in accordance with the indextime of the data item during playback of the media content item.
 6. Themethod as recited in claim 5, wherein the one or more data items aredisplayed on the device of the requesting account holder simultaneouslywith the playback of the media content item.
 7. The method as recited inclaim 1, further comprising: receiving an additional data item from oneor more contributing account holders during streaming of the mediacontent item to the device of the requesting account holder, theadditional data item having metadata including an index timecorresponding to a time of relevance of the additional data item duringplayback of the media content item; storing the additional data item andassociated metadata within the community space in correlation with themedia content item; and transmitting the additional data item andassociated metadata from the community space to the device of therequesting account holder in conjunction with continued streaming of themedia content item to the device of the requesting account holder. 8.The method as recited in claim 1, wherein tracking the fan-rating forthe contributing account holder from whom the data item is receivedincludes one or more of tracking a number of streaming requests receivedfrom the contributing account holder, tracking a number of views of dataitems received from the contributing account holder, trackingparticipation of the contributing account holder in one or moreactivities associated with the community space, and tracking a votecount associated with data items received from the contributing accountholder.
 9. The method as recited in claim 1, further comprising:directing display of a container including the one or more data items onthe device of the requesting account holder, wherein the container isconfigured to provide for display navigation through the one or moredata items.
 10. The method as recited in claim 9, wherein the containeris displayed on the device of the requesting account holdersimultaneously with the playback of the media content item.
 11. Themethod as recited in claim 9, wherein the container is configured toprovide a user-controllable sort of the one or more data items by one ormore of index time, contributing account holder, data item type,fan-rating, geographic location of contributing account holder, andgroup association of contributing account holder.
 12. The method asrecited in claim 9, wherein the container is configured to provide atext search tool to enable searching through the one or more data itemsfor user-specified textual content.
 13. The method as recited in claim9, wherein the container is configured to enable user-selection of anyof the one or more data items, and wherein the method further includesmoving a current playback time of the media content item to the indextime within the metadata of a currently selected data item within thecontainer.
 14. The method as recited in claim 1, wherein the metadata ofsome of the one or more data items includes specification of a pixelposition within a video frame of the media content item, wherein thedata item is correlated to the pixel position.
 15. The method as recitedin claim 14, further comprising: directing display of the one or moredata items on the device of the requesting account holder in accordancewith the index time of the data item during playback of the mediacontent item and at the pixel position to which the data item iscorrelated.
 16. The method as recited in claim 1, further comprising:receiving a specification of one or more data item filter parametersfrom the requesting account holder; filtering the one or more data itemsstored within the community space in accordance with the specificationof one or more data item filter parameters to identify a set of filtereddata items, wherein just the set of filtered data items and associatedmetadata correlated with the media content item is transmitted from thecommunity space to the device of the requesting account holder inconjunction with streaming the media content item to the device of therequesting account holder.
 17. The method as recited in claim 16,wherein the one or more data item filter parameters include one or moreof index time, contributing account holder, data item type, fan-rating,geographic location of contributing account holder, and groupassociation of contributing account holder.
 18. The method as recited inclaim 1, further comprising: processing the one or more data itemsreceived from the one or more contributing account holders through amachine learning module to generate one or more dynamic data items basedon the data items received from the one or more contributing accountholders, wherein each of the one or more dynamic data items has metadataincluding an index time corresponding to a time of relevance of thedynamic data item during playback of the media content item, and whereineach of the one or more dynamic data items has metadata including ahistory of the one or more data items received from the one or morecontributing account holders upon which the dynamic data item is based;storing the one or more dynamic data items and associated metadatawithin the community space in correlation with the media content item;and transmitting some of the one or more dynamic data items andassociated metadata from the community space to the device of therequesting account holder in conjunction with streaming of the mediacontent item to the device of the requesting account holder.
 19. Themethod as recited in claim 18, wherein the machine learning module isconfigured to correlate multiple data items received from the one ormore contributing account holders into a set of correlated data itemsbased on inclusion of similar content within the set of correlated dataitems, and wherein the machine learning module is configured todetermine a subject and/or a theme of the set of correlated data items,and wherein the machine learning module is configured to generate adynamic data item conveying the determined subject and/or theme of theset of correlated data items.
 20. The method as recited in claim 18,wherein some of the one or more dynamic data items represent aconsolidation of a plurality of data items received from the one or morecontributing account holders.
 21. The method as recited in claim 18,wherein some of the one or more dynamic data items represent a newcomposition based on a plurality of data items received from the one ormore contributing account holders.
 22. The method as recited in claim 1,wherein the fan-rating and the identity for the contributing accountholder are displayed next to each other on the data item received fromthe contributing account holder on the device of the requesting accountholder.